//
//  StrategyDoubleParameter.h
//  StrategyInspector
//
//  Created by jiro on 12/07/29.
//  Copyright 2012 jiro music. All rights reserved.
//

#import <Cocoa/Cocoa.h>

#import "StrategyParameter.h"

class StrategyDoubleParameter : public StrategyParameter
{
public:

	StrategyDoubleParameter();

	StrategyDoubleParameter( double value );

	StrategyDoubleParameter( double minValue, double maxValue, double interval );

	bool isMutable() const;

	void nextValue( bool& isLast );
	
	void initialize();
	
	double getDoubleValue() const;
	double getDoubleValueStart() const;
	double getDoubleValueEnd() const;
	
	void setDoubleValue( double value );
	
	StrategyParameter* copy() const;
	
	void setValueMiddle();

private:

	double interval;

	double currentValue;

	double startValue;

	double endValue;

};
